package com.platform.common.enumstatus;

import java.io.Serializable;

/**
 * @author wangLc
 * 系统变量
 */
public class SystemEnum {
	
	/**
	 * 角色状态
	 */
	public enum roleStatus implements Serializable{
		/**
		 * 角色开启
		 */
		ON("0","开启"),
		/**
		 *角色禁用
		 */
		OFF("1","禁用");
		 
		 String key;
		 String name; 
		 
		 private roleStatus(String key, String name) {
				this.key = key;
				this.name = name;
	     }
		 
		 public String getKey() {
			return key;
		 }
		 public String getName() {
			return name;
		 }
	}
	
	/**
	 * 单位类型
	 */
	public enum orgType implements Serializable{
		/**
		 * 建设单位
		 */
		JSDW("1",""),
		/**
		 * 勘察单位
		 */
		KCDW("2","勘察单位"),
		/**
		 * 设计单位
		 */
		SJDW("3","设计单位"),
		/**
		 * 审图单位
		 */
		STDW("4","审图单位"),
		/**
		 * 监管单位
		 */
		JGDW("5","监管单位"),
		/**
		 * 运维单位
		 */
		YWDW("6","运维单位"),
		/**
		 * 勘察设计单位
		 */
		KCSJDW("7","勘察设计单位");
		 
		 String key;
		 String name; 
		 
		 private orgType(String key, String name) {
				this.key = key;
				this.name = name;
	     }
		 
		 public String getKey() {
			return key;
		 }
		 public String getName() {
			return name;
		 }
	}
	
	/**
	 * 账号类型
	 */
	public enum accountType implements Serializable{
		/**
		 * 企业账号 
		 */
		ORG("1","企业账号"),
		/**
		 * 人员账号
		 */
		USER("2","人员账号"),
		/**
		 * 专家账号
		 */
		EXPERT("3","专家账号");
		 
		 String key;
		 String name; 
		 
		 private accountType(String key, String name) {
				this.key = key;
				this.name = name;
	     }
		 
		 public String getKey() {
			return key;
		 }
		 public String getName() {
			return name;
		 }
	}
	
	
	/**
	 * 角色类型
	 */
	public enum  roleType implements Serializable{
		/**
		 * 建设单位管理员
		 */
		ADMIN("0","超级管理员"),
		
		/**
		 * 建设单位管理员
		 */
		JSDW("JSDWGLY","建设单位管理员"),
		/**
		 * 勘察单位管理员
		 */
		KCDW("KCDWGLY","勘察单位管理员"),
		/**
		 * 设计单位管理员     
		 */
		SJDW("SJDWGLY","设计单位管理员"),
		/**
		 * 审图单位管理员
		 */
		STDW("STJGGLY","审图单位管理员"),
		/**
		 * 监管单位管理员
		 */
		JGDW("5","监管单位管理员"),
		/**
		 * 运维单位管理员
		 */
		YWDW("YWDWGLY","运维单位管理员"),
		/**
		 * 勘察设计单位管理员
		 */
		KCSJDW("KCSJDWGLY","勘察设计单位管理员");

		/**
		 * 审查专家
		 */
		//ZZRY("SCZJ","审查专家"),
		/**
		 * 建设单位管理员
		 */
		//JSDWYWY("JSDWYWY","建设单位业务员"),
		/**
		 * 勘察单位管理员
		 */
		//KCDWYWY("KCDWYWY","勘察单位业务员"),
		/**
		 * 勘察设计单位管理员
		 */
		//KCSJDWYWY("KCSJYWY","勘察设计单位业务员"),
		/**
		 * 设计单位管理员
		 */
		//SJDWYWY("SJDWYWY","设计单位业务员"),
		/**
		 * 审图单位管理员
		 */
		//STDWYWY("STDWYWY","审图单位业务员");
		 
		 String key;
		 String name; 
		 
		 private roleType(String key, String name) {
				this.key = key;
				this.name = name;
	     }
		 
		 public String getKey() {
			return key;
		 }
		 public String getName() {
			return name;
		 }
	}
	
	
	/**
	 * 获取角色名称
	 */
	public static String getRoleTypeName(String key){
             String result = "无此值";
		for(roleType roleTypePam:roleType.values()){
			if(roleTypePam.getKey().equals(key)){
				result = roleTypePam.getName();
				break;
			}
		}
		return result;
	}
	
	/**
	 * 获取单位类型名称
	 */
	public static String getOrgTypeName(String key){
             String result = "无此值";
		for(orgType roleTypePam:orgType.values()){
			if(roleTypePam.getKey().equals(key)){
				result = roleTypePam.getName();
				break;
			}
		}
		return result;
	}

}
